#ifndef _MEGA_GAMEOBJECT_H_
#define _MEGA_GAMEOBJECT_H_

#include "Globals.h"

namespace mega
{

/**
 * Base abstract class for all object in game
 */
class GameObject
{
public:
	GameObject();
	virtual ~GameObject();

	virtual void render(RenderTarget & _target) = 0;
	virtual void move(const Position & _offset);

	const Position & getPosition() const;
	void setPosition(const Position & _newPos);

private:
	Position m_pos;
};

}

#endif // _MEGA_GAMEOBJECT_H_
